home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / pcl / src-16f.lha / compiler / pseudo-vops.lisp < prev    next >
Encoding:
Text File  |  1992-07-28  |  1.3 KB  |  44 lines

  1. ;;; -*- Package: C; Log: C.Log -*-
  2. ;;;
  3. ;;; **********************************************************************
  4. ;;; This code was written as part of the CMU Common Lisp project at
  5. ;;; Carnegie Mellon University, and has been placed in the public domain.
  6. ;;; If you want to use this code or any part of CMU Common Lisp, please contact
  7. ;;; Scott Fahlman or slisp-group@cs.cmu.edu.
  8. ;;;
  9. (ext:file-comment
  10.   "$Header: pseudo-vops.lisp,v 1.7 92/06/04 16:13:14 ram Exp $")
  11. ;;;
  12. ;;; **********************************************************************
  13. ;;;
  14. ;;;    This file contains definitions of VOPs used as internal markers by the
  15. ;;; compiler.  Since they don't emit any code, they should be portable. 
  16. ;;;
  17. ;;; Written by Rob MacLachlan
  18. ;;;
  19. (in-package 'c)
  20.  
  21.  
  22. ;;; Notes the place at which the environment is properly initialized, for
  23. ;;; debug-info purposes.
  24. ;;;
  25. (define-vop (note-environment-start)
  26.   (:info start-lab)
  27.   (:vop-var vop)
  28.   (:save-p :compute-only)
  29.   (:generator 0
  30.     (emit-label start-lab)
  31.     (note-debug-location vop start-lab :non-local-entry)))
  32.  
  33.  
  34. ;;; Call a move function.  Used for register save/restore and spilling.
  35. ;;;
  36. (define-vop (move-operand)
  37.   (:args (x))
  38.   (:results (y))
  39.   (:info name)
  40.   (:vop-var vop)
  41.   (:generator 0
  42.     (funcall (symbol-function name) vop x y)))
  43.  
  44.